From 96450ed9cc8b993b4d54bbc9e87eb078bc64ad21 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jonas=20=C3=85dahl?= Date: Fri, 4 Dec 2020 08:04:58 +0100 Subject: [PATCH] gdk/surface: Emit layout event while frozen The allocation of popups are part dependent of the allocation of the root, which means the root must still be allocated when updates are frozen, otherwise we'll try to allocate non-laid out popups. --- gdk/gdksurface.c | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/gdk/gdksurface.c b/gdk/gdksurface.c index 2c52e551f3..fd2d0772e8 100644 --- a/gdk/gdksurface.c +++ b/gdk/gdksurface.c @@ -1336,9 +1336,6 @@ gdk_surface_layout_on_clock (GdkFrameClock *clock, if (!GDK_SURFACE_IS_MAPPED (surface)) return; - if (surface->update_freeze_count) - return; - surface->pending_phases &= ~GDK_FRAME_CLOCK_PHASE_LAYOUT; class = GDK_SURFACE_GET_CLASS (surface); @@ -1358,13 +1355,6 @@ gdk_surface_request_layout (GdkSurface *surface) if (class->request_layout) class->request_layout (surface); - if (surface->update_freeze_count || - gdk_surface_is_toplevel_frozen (surface)) - { - surface->pending_phases |= GDK_FRAME_CLOCK_PHASE_LAYOUT; - return; - } - frame_clock = gdk_surface_get_frame_clock (surface); g_return_if_fail (frame_clock); -- 2.30.2